#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;

/*
	字段---->属性
	成员函数(类内部的函数)---->方法/行为
	封装：事物的属性和行为形成类，类定义变量就是对象.
	数据成员的私有化	提供存取器(set get方法)
		private		私有 不能通过对象访问类的属性或者行为
		public		公开 可以通过对象访问类的属性和行为
		protected   忽略
*/

//首字母大写
class Student{
	int 	id;
	char 	name[20];
	//'m' man 'f' woman
	char 	isMale;			//true man  false woman
public:
	//存
	void setId(int _id) { id = _id; }
	//取
	int getId() { return id; }

	void setName(const char* _name){ strcpy(name, _name); }
	const char* getName() { return name; }

	void setIsMale(bool _isMale) { 
		if(_isMale == true){		
			isMale = 'm';
		}else{
			isMale = 'f';
		}
	}
	bool getIsMale() { 
		if(isMale == 'm'){
			return true;
		}else{
			return false; 
		}
	}
	void intrduce();   		
	//{
	//	cout << id << "\t" << name << "\t" << isMale << endl;
	//}
};

void Student::intrduce()
{
	cout << id << "\t" << name << "\t" << isMale << endl;
}


int main(int argc,char **argv)
{
	//等价与class Student tom;
	Student tom;			//student 类  tom 对象
	tom.setId(1);
	tom.setName("willian");				//const char* ---> 常量字符串
	tom.setIsMale(true);				//1000000数据

	tom.intrduce();
	return 0;
}
